草庐IT

c++ - SIMD C++ 库

全部标签

c++ - 我如何同时使用 GTK 和 glut?

我知道为了编写一个GTK应用程序,我写了一堆代码来描述放在主窗口中的内容,然后我调用:gtk_main();在此之后的任何代码语句都不会被执行。现在假设我希望我的GTK应用程序显示我用glut编写的内容,它本身包含一堆关于需要设置什么图形等的语句,然后以语句结束:glutMainLoop();此后的任何内容都不会执行。所以我的问题是这两个语句中的任何一个都阻止我调用另一个。有没有办法在GTK小部件内执行过剩主循环?有没有一种方法可以编写代码,以某种方式同时调用GTK主循环和过剩主循环(但从主程序调用并在单独的X窗口中呈现,而不是在小部件中)?我觉得这可以用“线程”来完成......

c# - C/C++ 到 C# 转换器或模拟器

假设我有一些可移植的非可视化库的C代码。代码主要依赖于CRT(没有QT/DirectX/WinAPI等依赖项)。有没有办法在C#应用程序中使用此代码?我了解托管C++,这对我来说不是一种可接受的方式。我想到了一个可以用于自动翻译的C/C++到C#转换器(我不需要一个可读输出,一个可以工作的就足够了)或者一个我可以使用的模拟器执行已编译的C/C++代码。您是否知道任何可以帮助我从C#代码使用现有C/C++代码的方法?编辑:P/Invoke也不是一个可以接受的方式。以及调用外部EXE或使用COM/ActiveX。我需要能够将C和C#代码合并到一个托管DLL或EXE中的东西。现有的C代码是库

c++ - pthreads 中的内存模型规范

使用pthread是否可以保证一个线程中的内存写入何时在其他线程中可见?与Java相比,Java语言规范有一个sectionthatspecifiestheinteractionoflocksandmemory这使得编写可移植的多线程Java代码成为可能。是否有相应的pthreads规范?当然,您总是可以让共享数据变得不稳定,但这不是我想要的。如果这取决于平台,是否有事实上的标准?还是应该使用另一个线程库? 最佳答案 POSIX在4.11MemorySynchronization中指定内存模型:Applicationsshallen

c++ - 为什么它不需要链接库?

#include#includeintmain(){printf("%f",roundf(3.14));}我编译上面的代码(没有使用-lm),添加使用ldda.out,结果是linux-vdso.so.1=>(0x00007fffab9ff000)libc.so.6=>/lib/x86_64-linux-gnu/libc.so.6(0x00007fd6da0f8000)/lib64/ld-linux-x86-64.so.2(0x00007fd6da4eb000)为什么a.out没有链接到libm但可以使用roundf(或类似sqrt的东西)?我已经使用nm来测试libc.so.6和ld

c++ - 使用与 double 数组的内存匹配的 std::vector

我正在尝试连接两个现有代码库——一个使用C,另一个使用C++。C++代码使用std::vector而另一个基于double组。我想从C代码传递double组,在C++代码中对std::vectors执行操作,并最终将这些操作反射(reflect)在double组中。是否可以创建一个std::vector来匹配double数组占用的内存?我尝试了几种选择,但它们都涉及创建一个新vector和将double数组的拷贝复制到该vector中。例如:voidfcn(double*a,intsizeofa){std::vectorvect_a;vect_a.assign(a,a+sizeofa)

c++ - 重构构建系统以使用 Autotools

在过去的几天里,我一直在研究使用autotools来构建我的项目,而不是我在过去几个月中拼凑的Makefile。不幸的是,我还没有找到一个例子让我对我的项目结构目前的情况有足够的了解。我的项目的应用程序代码中包含三个库。我正在寻找使用单个配置脚本来制作(和安装)应用程序和库的最佳方法。 最佳答案 抱歉跑题了。我现在做了类似的事情,但我可以在Autotools和CMake之间进行选择。我很高兴选择了第二个。可能值得一看,包括CDash、CTest和CPack。http://www.cmake.org/最好的问候,奥瓦内斯

c++ - 如何在netbeans中创建项目依赖(c/c++插件)

当我开发一个C++应用程序时,我意识到我正在创建很多可以在其他项目中使用的类和函数。所以我想将所有这些代码放在一个单独的netbeans项目中,该项目可以“包含”到其他项目中。(带有代码完成等)我已经尝试创建一个新的“静态库”项目,然后将该项目添加到我的主项目中(通过转到首选项->链接->库并添加我的“库项目”),但是代码完成功能当我尝试#include时没有找到我的库项目的.h文件,该项目也不会构建。正确的做法是什么? 最佳答案 创建静态库并将其添加到Linker->Libraries是正确的。但还需要另一个小步骤:​​将包含共享

c++ - 从 c/c++ 应用程序写入 *.doc 或 *.rtf 文件

如何使用C或C++以编程方式写入/生成*.doc文件?是否有(开源/跨平台)库可以做到这一点?如果这不可能,是否可以编写一个*.odt文件然后将其转换为*.doc?提前致谢!编辑:AndersAbel评论说*.rtf文件类型是一个选项,因此也接受对此的任何建议。 最佳答案 Joel有一篇关于此主题的有趣文章:http://www.joelonsoftware.com/items/2008/02/19.html基本上他建议:通过COM使用MSWord创建文档。生成MSWord将加载的另一种格式,例如RTF。RTF的优点是它是一种文本格

c++ - 编译器如何使用lib文件?

我很好奇c/c++编译器是如何分析lib文件的?我的意思是说我创建了一个包含一些类的库,我在我的主程序中使用了那个库。编译器如何知道该库中有哪些类名。当然,这些信息以二进制格式存在,我想在我的程序中使用该功能,具体来说,我有一个二进制lib文件,我想知道该lib文件中存在的所有类和属性/函数。这可能吗?如果编译器可以做到,为什么有些库不能?感谢任何线索 最佳答案 编译器不会执行您的建议,但链接器会执行。编译器从包含的与lib文件相关的头文件中知道它需要的信息。然后链接器将您要包含的声明和lib文件及其其他目标文件放在一起。例如,可能

iphone - 从 iPhone 中的 WAV 文件中去除背景噪音

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。关闭8年前。Improvethisquestion我有一个录制的WAV文件。我想去除背景噪音并单独分离语音。是否有任何C/C++代码可用于实现此目的,以便我可以将其集成到我的项目中?我已经从Audacity下载了一个代码,但无法集成它。是否有可用的第三方库或C/C++代码?